package com.youlai.boot.system.service;

import com.youlai.boot.excel.Sheet1DTO;
import com.youlai.boot.excel.Sheet2DTO;
import com.youlai.boot.system.model.entity.SysYouqitouzi;
import com.youlai.boot.system.model.form.SysYouqitouziForm;
import com.youlai.boot.system.model.query.SysYouqitouziQuery;
import com.youlai.boot.system.model.vo.SysDashboardVO;
import com.youlai.boot.system.model.vo.SysYouqitouziVO;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

/**
 * 油气项目服务类
 *
 * @author lwb
 * @since 2025-05-29 21:40
 */
public interface SysYouqitouziService extends IService<SysYouqitouzi> {

    /**
     * 油气项目分页列表
     *
     * @return
     */
    IPage<SysYouqitouziVO> getSysYouqitouziPage(SysYouqitouziQuery queryParams);

    /**
     * 获取油气项目表单数据
     *
     * @param id 油气项目ID
     * @return
     */
    SysYouqitouziForm getSysYouqitouziFormData(Long id);

    /**
     * 修改油气项目
     *
     * @param id       油气项目ID
     * @param formData 油气项目表单对象
     * @return
     */
    boolean updateSysYouqitouzi(Long id, SysYouqitouziForm formData);

    /**
     * 删除油气项目
     *
     * @param ids 油气项目ID，多个以英文逗号(,)分割
     * @return
     */
    boolean deleteSysYouqitouzis(String ids);

    /**
     * 首页统计
     *
     * @param queryParams
     * @return
     */
    SysDashboardVO dashboard(SysYouqitouziQuery queryParams);

    /**
     *  导入
     * @param sheet1Data
     * @param sheet2Data
     * @return
     */
    boolean importExcel(List<Sheet1DTO> sheet1Data, List<Sheet2DTO> sheet2Data);
}
